/**
 * Created by Been on 2017/5/16.
 */

var VM = new Vue({
    el:"#app",
    created:function(){
        this.lay();
        this.getMessagesLists();

    },
    data:{
        totalNum:"",
        msgType:[],
        msgStatus:[],
        messagesLists:[],
        delMultiFlag:[],
        allChoseFlag:false,
        keyWord:'',
        keyWord2:'',
        keyWord3:''
    },
    filters:{
        statusFilter:function(value){
            if(value){
                return "紧急"
            }else{
                return "一般"
            }
        },
        showFile:function(value){
            if(value){
                return "有";
            }else{
                return "无";
            }
        },
        showType:function(value){
            if(value==0){
                return "请假"
            }
            if(value==1){
                return "会议"
            }
            if(value==2){
                
                return "私信"
            }
        }
        
    },
    methods:{
        lay:function(){

            var _this = this;
            layui.use(['laydate','element','laypage','layer','form'], function(){
                var form = layui.form();
                $ = layui.jquery;//jquery
                laydate = layui.laydate;//日期插件
                lement = layui.element();//面包导航
                laypage = layui.laypage;//分页
                layer = layui.layer;//弹出层

                //以上模块根据需要引入
                getPageData(1);
                /*请求后台数据，分页请求*/
                function getPageData(curr) {

                    $.ajax({
                        url:"../../messages/list.do?pagenum="+curr+"&pagesize="+5,
                        dataType:"json",
                        type:"POST",
                        async:false,
                        success:function (res) {
                            if(res.msg=="success"){
                                var list = res.result.dataList;
                                _this.messagesLists = list;
                                console.log(list);
                                laypage.pages = res.result.total;
                                _this.totalNum = res.result.total;
                                //当只有一页时
                                if(res.result.total > 5){
                                    $(".pageShowFlag").css({"display":"none"});
                                    $(".pageHideFlag").css({"display":"block"});
                                }else if(res.result.total > 0 ){
                                    $(".pageShowFlag").css({"display":"block"});
                                    $(".pageHideFlag").css({"display":"none"});
                                }else{
                                    $(".pageShowFlag").css({"display":"none"});
                                    $(".pageHideFlag").css({"display":"none"});
                                    layer.msg("没有查询到数据！", {icon: 1});
                                }



                                laypage({
                                    cont: 'page', //容器。值支持id名、原生dom对象，jquery对象。【如该容器为】：<div id="page"></div>
                                    pages: Math.ceil(res.result.total/5), //通过后台拿到的总页数
                                    curr: curr || 1, //当前页
                                    jump: function(obj, first){ //触发分页后的回调
                                        if(!first){ //点击跳页触发函数自身，并传递当前页：obj.curr

                                            getPageData(obj.curr);

                                        }
                                    }
                                });
                            }else{
                                layer.msg("没有查询到数据！", {icon: 1})
                            }
                        },
                        error:function (XMLHttpRequest) {
                            layer.msg("系统错误", {icon: 1});
                        }
                    })
                }
                
                /*全选checked*/
                $("#allChecked").click(function () {
                    if ($(this).is(':checked')) {
                        $("input:checkbox").prop('checked', true)
                    } else {
                        $("input:checkbox").prop('checked', false)
                    }
                });
            });
        },
        getMessagesLists:function(){
            var _this = this;
            $.ajax({
                type: "POST",
                url: "../../messages/getmessagesInfo.do",
                dataType: "json",
                success: function(res){
                    _this.msgType = res.result.typeList;
                    _this.msgStatus = res.result.statusList;
                }
            });
        },
        allChose:function(){
            var _this = this;
            this.allChoseFlag = !this.allChoseFlag;
            _this.delMultiFlag = [];
            this.messagesLists.forEach(function(item,index){
                if(_this.allChoseFlag){_this.delMultiFlag.push(item.id);}

                if(typeof item.checked == "undefined"){
                    Vue.set(item,"checked",_this.allChoseFlag);
                }else{
                    item.checked = _this.allChoseFlag;
                }
            });
            console.log(_this.delMultiFlag);
        },
        selectSelf:function(item){
            if(typeof item.checked == "undefined"){
                Vue.set(item,"checked",true);
            }else{
                item.checked = !item.checked;
            }
        },
        move:function(item){
            // item.status = !item.status;
            var _this = this;
            $.ajax({
                type: "POST",
                url: "../../messages/updateStatus.do",
                data: {id:item.id},
                dataType: "json",
                success: function(data){
                    item.status = !item.status;//状态的标识
                    // window.location.href = "javascript:location.replace(location.href)";
                }
            });
        },
        editMessages:function(item){
            admin_edit("查看","../../messages/readMessage.do?id="+ item.id,'1000','800')

        },
        delMessages:function(item){
            admin_del("删除","../../messages/delete.do?id="+item.id,'800','600')
            //
            // // item.id = 0;//只是删除的标志
            // var _this = this;
            // if(layer.confirm("确定删除吗？")){
            //     $.ajax({
            //         type: "POST",
            //         url: "../../messages/delete.do?id="+item.id+"",
            //         // data: item,
            //         dataType: "json",
            //         success: function(data){
            //             window.location.href = "javascript:location.replace(location.href)";
            //         }
            //     });
            // }
        },
        delMulti:function(){

            var _this = this;
            var delMultiArr = _this.delMultiFlag.join(",");
            if(!delMultiArr){
                layer.msg("请选择删除项！", {icon: 1});
                return false; 
            }
            layer.confirm('确认要删除吗？',function(index){
                //发异步删除数据
                $.ajax({
                    url:"../../messages/deleteSome.do",
                    dataType:"json",
                    type:"POST",
                    data: {"ids":delMultiArr},
                    async:true,
                    success:function (res) {

                        if(res.msg=="success"){
                            layer.msg("删除成功", {icon: 1});

                            window.location.reload();
                        }
                    },
                    error:function (XMLHttpRequest) {
                        layer.msg("系统错误", {icon: 1});
                    }
                })
                layer.close(index);
            });
            
            
            
            // if(layer.confirm("确定删除吗?")){
            //     console.log(delMultiArr);
            //     $.ajax({
            //         type: "POST",
            //         url: "../../messages/deleteSome.do",
            //         data: {"ids":delMultiArr},
            //         dataType: "json",
            //         success: function(data){
            //             layer.msg("删除成功!", {icon: 0});
            //             window.location.href = "javascript:location.replace(location.href)";
            //         }
            //     });
            // }

        },
        check:function () {
            var _this = this;
            getPageData(1);
            /*请求后台数据，分页请求*/
            function getPageData(curr) {
                _this.keyWord2 = $("#keyWord2").attr("selectedCode");
                _this.keyWord3 = $("#keyWord3").attr("selectedCode");
                $.ajax({
                    url:"../../messages/list.do?pagenum="+curr+"&pagesize="+5,
                    dataType:"json",
                    data: {"title":_this.keyWord,"type":_this.keyWord2,"status":_this.keyWord3},
                    type:"POST",
                    async:false,
                    success:function (res) {
                        if(res.msg=="success"){
                            var list = res.result.dataList;
                            _this.messagesLists = list;
                            laypage.pages = res.result.total;
                            _this.totalNum = res.result.total;
                            //当只有一页时
                            if(res.result.total > 5){
                                $(".pageShowFlag").css({"display":"none"});
                                $(".pageHideFlag").css({"display":"block"});
                            }else if(res.result.total > 0 ){
                                $(".pageShowFlag").css({"display":"block"});
                                $(".pageHideFlag").css({"display":"none"});
                            }else{
                                $(".pageShowFlag").css({"display":"none"});
                                $(".pageHideFlag").css({"display":"none"});
                                layer.msg("没有查询到数据！", {icon: 1});
                            }


                            laypage({
                                cont: 'page', //容器。值支持id名、原生dom对象，jquery对象。【如该容器为】：<div id="pagination"></div>
                                pages: Math.ceil(res.result.total/5), //通过后台拿到的总页数
                                curr: curr || 1, //当前页
                                jump: function(obj, first){ //触发分页后的回调
                                    if(!first){ //点击跳页触发函数自身，并传递当前页：obj.curr
                                        getPageData(obj.curr);
                                    }
                                }
                            });
                        }else{
                            layer.msg("没有查询到数据！", {icon: 1})
                        }
                    },
                    error:function (XMLHttpRequest) {
                        layer.msg("系统错误", {icon: 1});
                    }
                })
            }
        }
    }
});//vue 实力结束
// function synchronous() {
//     $.ajax({
//         url:"../../messages/getMassages.do",
//         dataType:"json",
//         type:"POST",
//         async:true,
//         success:function (res) {
//             var list = res.result.list;
//             if(list.length>0){
//                 //边缘弹出
//                 layer.open({
//                     type: 1
//                     ,offset: 'rb' //具体配置参考：offset参数项
//                     , time: 4000
//                     ,content: '<div style="padding: 20px 80px;">您有'+ res.result.num + '条未读消息</div>'
//                     ,btn: '关闭全部'
//                     ,btnAlign: 'c' //按钮居中
//                     ,shade: 0 //不显示遮罩
//                     ,yes: function(){
//                         layer.closeAll();
//                     }
//                 });
//             }else {
//                 //边缘弹出
//                 layer.open({
//                     type: 1
//                     ,offset: 'rb' //具体配置参考：offset参数项
//                     , time: 4000
//                     ,content: '<div style="padding: 20px 80px;">您未收到任何消息</div>'
//                     ,btn: '关闭全部'
//                     ,btnAlign: 'c' //按钮居中
//                     ,shade: 0 //不显示遮罩
//                     ,yes: function(){
//                         layer.closeAll();
//                     }
//                 });
//             }
//
//
//         },
//     })
// }
// $(document).ready(function(){
//     Polling();
// });
// function Polling(){
//     synchronous();
//     setInterval("synchronous()", 30000);
// }
$('button.add').on("click",function(){
    admin_add("新增","../../messages/redirect.do",'800','600')
}); //layui 代码结束



    